package com.benyanyi.permissionlib;

import com.benyanyi.permissionlib.callback.PermissionCallBack;
import com.benyanyi.permissionlib.dialog.PermissionDialogInfo;

/**
 * @author YanYi
 * @date 2019/5/24 11:47
 * @email ben@yanyi.red
 * @overview
 */
public interface PermissionConfig {
    /**
     * 添加权限
     *
     * @param permissions 权限
     * @return
     */
    PermissionConfig setPermissions(String... permissions);

    /**
     * dialog配置
     *
     * @param info 弹窗信息
     * @return 当前
     */
    PermissionConfig setPermissionDialogInfo(PermissionDialogInfo info);

    /**
     * 使用默认dialog
     *
     * @return
     */
    PermissionConfig setDefaultPermissionDialogInfo();

    /**
     * 判断权限是否需要请求
     *
     * @param callBack 回调
     */
    void request(PermissionCallBack callBack);

}
